package com.imooc.service;

import com.imooc.pojo.UserAddress;
import com.imooc.pojo.bo.AddressBO;

import java.util.List;

/**
 * 轮播图service
 */
public interface AddressService {
    /**
     * 根据用户id查询用户的所有收货地址
     *
     * @param userId
     * @return
     */
    List<UserAddress> queryAll(String userId);

    /**
     * 用户新增地址
     *
     * @param addressBO
     */
    public void addNewUserAddress(AddressBO addressBO);

    /**
     * 这里我们更新方法会多传入一个AddressBO里的addressId,这个是确定的
     *
     * @param addressBO
     */
    public void updateUserAddress(AddressBO addressBO);

    /**
     * 根据用户id和地址id删除对应的地址信息
     *
     * @param userId
     * @param addressId
     */
    public void deleteUserAddress(String userId, String addressId);

    /**
     * 更新默认地址,涉及到原本默认地址和现有默认地址的数据库字段的修改
     *
     * @param userId
     * @param addressId
     */
    public void updateUserAddressToBeDefault(String userId, String addressId);

    /**
     * 根据用户id和地址id去查询一个用户地址类
     *
     * @return
     */
    public UserAddress queryUserAddress(String userId, String addressId);
}
